Arithmetic circuits

[[Boolean circuits]] are overly verbose when representing arithmetic operations.

An arithmetic circuit is a system of equations using only addition, multiplication, and equality. It checks that a proposed set of inputs to a solution are valid, but doesn’t compute said solution.

We say that a circuit is satisfied if we have an assignment to the input variables where all the equations hold true.

Any problem in P or NP can be modelled with an arithmetic circuit.

A witness is an assignment to all of the variables which satisfies the circuit.